The present invention relates to processing digital graphics objects.
Digital graphics objects are graphics objects, i.e., objects in a two or more dimensional space, that are represented by digital data. Digital graphics objects can be processed by computer applications that support graphics. For example, computer applications can include graphics components, e.g., graphics user interfaces, and/or can be developed explicitly for graphics applications, such as drawing, painting, illustration, presentation, design, animation or simulation. Computer applications typically process two-dimensional graphics objects, but some applications—e.g., some computer aided design (“CAD”), animation, and simulation applications—can process graphics objects in more than two dimensions, typically in three dimensions representing the dimensions of the “real space.” In some applications, one or more dimensions of the three-dimensional space have only discrete values. For example in CAD applications, a multi-level building or a multiple-layer integrated circuit can be represented by a model space that includes a number of parallel two-dimensional layers and connections between adjacent layers.
To represent a three-dimensional space on the two-dimensional surface of a sheet of paper or the screen of a display device, the three-dimensional space is projected onto a two-dimensional space, called paper space. A projection is a mapping that reproduces in a lower (e.g., two) dimensional space objects that are defined in a higher (e.g., three) dimensional space. The projection is typically performed by the application that processes the three-dimensional objects. In standard projections, called views, such as top, side, isometric or perspective views, graphics objects in a subspace of the model space are projected onto the paper space. Typically, the graphics objects in the subspace are processed according to a predetermined order, such as an order in which they were created. The projected (i.e., two-dimensional) objects can be further processed with the same or a different application. For example, the projected objects can be organized into a print stream by a printing component, or further processed by a graphics application that supports two-dimensional graphics.